1. Field of the Invention
The present invention relates generally to signal measurement systems and, more particularly, to scaling displayed waveforms in signal measurement systems.
2. Related Art
Conventional signal measurement systems such~as digital oscilloscopes sample, record and display time-varying analog signals. Samples of an input signal are taken and quantized, and the resultant digital representations are stored in a waveform memory under the control of a sampling clock. The acquired data may subsequently be read out as locations in memory are sequentially addressed by a clock signal to provide digital data which can be converted to a time-varying output signal for a waveform display. The sampling clock may be operated at one of several selectable rates depending upon the frequency content of the input signal. The selection of the portion of the analog input signal which is sampled and stored is determined by appropriate triggering circuitry to enable the operator to display the desired portion of the waveform.
There are many types of display elements which can be presented in signal measurement systems in general and test and measurement instruments in particular. For example, in addition to the waveforms representing the signals currently received at the channel inputs, waveforms referred to as function waveforms may also be displayed. Function waveforms are waveforms created by processing the signal waveforms such as performing arithmetic manipulations or combining multiple input signal waveforms in some predetermined manner. The resulting waveforms are placed in a display memory for subsequent retrieval and display. In addition, memory waveforms may also be displayed. Memory waveforms are waveforms which have been stored in memory for some predetermined time for later display. In addition to the above waveforms, other display elements such as marker indicators, trigger indicators, etc. are typically displayed.
Conventional test and measurement systems typically provide a display grid on which the display elements are presented. The display grid divides the coordinate axes into a series of divisions. Waveforms arc displayed on the display grid and arc scaled vertically and horizontally to facilitate analysis. Typically, the horizontal scale represents sweep speed and is in units of seconds per division. The vertical scale represents signal amplitude and is in volts per division. The center of the horizontal axis represents the delay or horizontal position of the displayed waveform and is referred herein to as horizontal offset. The center of the vertical axis represents the voltage offset of the displayed waveform and is referred to as vertical offset. The adjustment of these parameters is generally referred to signal scaling or waveform scaling and the above parameters are referred to as scaling parameters. Thus there are four scaling parameters which are controlled by the user to capture a desired portion of a waveform and to achieve a desired relative display of multiple waveforms: horizontal scale, horizontal offset, vertical scale and vertical offset.
Conventional test and measurement systems typically have one or more dials or knobs to control waveform scaling. Some conventional systems provide four knobs, one for each scaling parameter, for each input channel in the instrument. In test and measurement systems which have a single time base generator, there are often vertical scale and offset knobs dedicated to each channel and a single common knob dedicated to horizontal scale and offset. In other types of conventional test and measurement systems there is just one set of knobs for vertical scale and offset control. In this type of system, the user must first select which waveform is to be modified in accordance with the knob adjustments. Other conventional signal scaling systems have a single general purpose knob that requires the user to assign to the knob both, the scaling parameter to be changed and the waveform to be modified. The assignment of scaling parameters and/or waveforms to a knob may be achieved through activation of hardware and software switches.
There are a number of drawbacks to these conventional systems. First, there are numerous control actions required to assign parameters and waveforms to individual knobs and numerous adjustments that have to be made to achieve a desired scaling. This yields a complicated user interface that is difficult to learn and operate. In addition, these scaling parameters are adjusted independently; the user can typically modify only a single scaling parameter of a single waveform at a given time. As a result, complete scaling operations require a minimum of several control operations. In addition, it is not uncommon to return to a particular scaling parameter/waveform to make further modifications after other scaling parameters have been modified. Thus, because multiple controls are involved, these manipulations can be iterative in nature, further complicating the use of the instrument. In addition, such iterative control operations often take considerable time, reducing the utilization of the instrument for signal analysis and measurement.
Furthermore, the relationship between the numeric values associated with the scaling control operation and the resulting effect on the displayed waveform is unclear. Users often cannot anticipate the extent to which a waveform will change in size and/or position in response to a specific change in a numeric value.
What is needed, therefore, is a simple, uncomplicated means for enabling a user to perform scaling operations on displayed waveforms quickly and easily without having to perform a large number of control steps and operations and which enables the user to anticipate the resulting effect on the displayed waveforms.
The present invention is a signal scaling system and methodology for use in a signal measurement system having a graphical user interface which controls a waveform display region on a display device. In one aspect of the invention the signal scaling system is configured to determine one or more displayed waveform scaling parameters to cause portions of selected displayed waveforms appearing within the rescaling rectangle to occupy a predetermined portion of the waveform display region other than the resealing rectangle. For each of the selected displayed waveforms, the scaling parameters include horizontal scaling, horizontal offset, vertical scaling and vertical offset. Preferably, the predetermined portion of the waveform display region comprises the entire waveform display region and the selected displayed waveforms include all waveforms at least partially within the resealing rectangle. The displayed waveforms may include signal waveforms, function waveforms, and memory waveforms and the signal measurement system is preferably a digital oscilloscope.
In one embodiment the signal scaling system includes a resealing rectangle specification unit configured to outline a resealing rectangle on the waveform display region between a user-specified start point and a user-specified end point. The start and end points are at opposing corners of the resealing rectangle. The signal scaling system also includes a scaling computation unit configured to calculate the displayed waveform scaling parameters. This determination is based upon specifications of the resealing rectangle generated by the resealing rectangle specification unit and current scaling parameters generated by the signal measurement system. In one embodiment, the start point is a pixel location of a current cursor position upon receipt of a first selection indication from the signal measurement system. Likewise, the end point is a pixel location of a current cursor position upon receipt of a second selection indication from the signal measurement system. Typically, the user selects a pixel location through the use of one or more well-known pointing devices. Preferably, the scaling computation module determines the scaling parameters in response to a user action.
In another embodiment of the invention the resealing rectangle specification module includes a validation means for determining whether a valid pixel location has been selected as the start and end points. The validation determination is based upon cursor information provided by the signal measurement system. Valid pixel locations are considered to be pixel locations between which the resealing rectangle may be drawn. Preferably, a valid pixel location of the start point is located in a background region of the waveform display region.
In another embodiment of the invention, the validation means includes an interfacing means for interfacing with the signal measurement system to obtain the cursor information. The cursor information includes a current cursor position on the waveform display region and a selection indication of when the user has selected a pixel location on the waveform display region. The validation means also includes a hit-test means for determining whether the selected start point is sufficiently far from a display element to be considered to be within the background region of the waveform display region.
It is noted that the displayed waveform scaling parameters define a resealed representation of the portions of the selected displayed waveforms while the resealing rectangle is drawn over an original representation of the displayed waveforms. In one embodiment the scaling computation unit includes means for alternating between the original representation of the displayed elements and the resealed representation of the portions of the selected displayed waveforms.
In another aspect of the invention, a signal measurement system is disclosed. The signal measurement system includes a display; a graphical user interface for controlling the display to provide a waveform display region; and a signal scaling system configured to determine one or more displayed waveform scaling parameters to cause portions of selected displayed waveforms appearing within the resealing rectangle to occupy a predetermined portion of the waveform display region. In one embodiment the rescaling rectangle is of a predetermined size optionally appearing in a predetermined location of the waveform display region. The displayed waveforms may include signal waveforms, function waveforms, and memory waveforms.
In another embodiment, the signal measurement system includes an resealing rectangle specification unit configured to outline a rescaling rectangle on the waveform display region between user-specified start and end points, which are at opposing corners of the resealing rectangle. In another embodiment, the signal measurement system also includes a scaling computation unit. The scaling computation unit is configured to calculate the displayed waveform scaling parameters based upon specifications of the resealing rectangle generated by the rescaling rectangle specification unit and current scaling parameters generated by the signal measurement system. The start point is preferably a pixel location of a current cursor position upon receipt of a first selection indication from the signal measurement system while the end point is a pixel location of a current cursor position upon receipt of a second selection indication from the signal measurement system.
The signal measurement system also includes an interfacing means for interfacing with the signal measurement system to obtain the cursor information, the cursor information including a current cursor position on the waveform display region and the selection indication of when the user has selected a pixel location on the waveform display region. A hit-test means determines whether the selected start point is sufficiently far from a display element to be considered to be within the background region of the waveform-display region.
Preferably, the predetermined portion of the waveform display region comprises the entire waveform display region. Alternatively, the predetermined portion of the waveform display region comprises a larger or smaller region of the waveform display region, the larger region being user-specified. The displayed waveform scaling parameters define a resealed representation of the portions of the selected displayed waveforms. On the other hand, the rescaling rectangle is drawn over an original representation of the displayed waveforms. In one embodiment, the scaling computation unit includes means for alternating between the original representation of the displayed elements and the rescaled representation of the portions of the selected displayed waveforms.
In another aspect of the invention, a digital oscilloscope is disclosed. The digital oscilloscope includes a display and a graphical user interface for controlling said display to provide a waveform display region. The oscilloscope also includes a signal scaling system configured to determine horizontal and vertical scaling and offset scaling parameters to cause portions of displayed waveforms appearing within a user-created resealing rectangle to occupy the entire waveform display region. The signal scaling system includes an resealing rectangle specification unit configured to outline the resealing rectangle on the waveform display region between a user-specified start point in a background region of the waveform display region and a user-specified end point. The signal scaling system also includes a scaling computation unit configured to calculate the scaling parameters based upon specifications of the resealing rectangle generated by the rescaling rectangle specification unit and current scaling parameters generated by the digital oscilloscope. The signal scaling system further includes means for alternating between an original representation of the displayed elements and a rescaled representation of the displayed waveforms.
In another aspect of the invention, a method for scaling waveforms in a signal measuring system having a display device and a graphical user interface that controls a waveform display region on the display device is disclosed. The method includes the steps of: (a) generating an rescaling rectangle between a user-specified start pixel location and a user-specified end pixel location such that the start and end points are opposing corners of the rescaling rectangle; (b) calculating new scaling parameters in accordance with the resealing rectangle for displayed waveforms within the rescaling rectangle; and (c) drawing a new waveform display region such that the resealing rectangle occupies a predetermined larger portion of the waveform display region.
In one embodiment, the step (a) comprises the steps of: (1) detecting a user selection of a pixel location in a background region of the waveform display region; (2) tracking the cursor until selection of the end point is detected; and (3) drawing the resealing rectangle between the start and end points. In another embodiment, the step (b) comprises the step of: (1) calculating new scaling parameters in accordance with the rescaling rectangle for displayed waveforms within the resealing rectangle based upon horizontal and vertical coordinate values for coordinates of the resealing rectangle and a current vertical and horizontal scaling of the displayed waveforms.
In still another embodiment, the method further includes the steps of: (d) providing a first toggle means of returning to an original scaling; (e) returning to the original representation of said display elements when the first toggle means is selected by the user; (f) providing a second toggle means of returning to the resealed representation of said display elements; and (g) returning to the rescaled representation of the display elements when said second toggle means is activated by the user.
Further features and advantages of the present invention as well as the structure and operation of various embodiments of the present invention are described in detail below with reference to the accompanying drawings. In the drawings, like reference numbers indicate identical or functionally similar elements. Additionally, the left-most one or two digits of a reference number identifies the drawing in which the reference number first appears.